home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 July: Mac OS SDK / Dev.CD Jul 97 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Interfaces / AIncludes / Serial.a < prev    next >
Encoding:
Text File  |  1996-01-24  |  4.5 KB  |  178 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        Serial.a
  3. ;
  4. ;    Contains:    Serial port Interfaces.
  5. ;
  6. ;    Version:    Technology:    System 7.5
  7. ;                Package:    Universal Interfaces 2.2 in “MPW” on ETO #20
  8. ;
  9. ;    Copyright:    © 1984-1995 by Apple Computer, Inc.
  10. ;                All rights reserved.
  11. ;
  12. ;    Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13. ;                stack.  Include the file and version information (from above)
  14. ;                in the problem description and send to:
  15. ;                    Internet:    apple.bugs@applelink.apple.com
  16. ;                    AppleLink:    APPLE.BUGS
  17. ;
  18. ;
  19.  
  20.     IF &TYPE('__SERIAL__') = 'UNDEFINED' THEN
  21. __SERIAL__ SET 1
  22.  
  23.  
  24.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  25.     include 'Types.a'
  26.     ENDIF
  27. ;        include 'ConditionalMacros.a'                                ;
  28.  
  29. baud300                            EQU        380
  30. baud600                            EQU        189
  31. baud1200                        EQU        94
  32. baud1800                        EQU        62
  33. baud2400                        EQU        46
  34. baud3600                        EQU        30
  35. baud4800                        EQU        22
  36. baud7200                        EQU        14
  37. baud9600                        EQU        10
  38. baud19200                        EQU        4
  39. baud38400                        EQU        1
  40. baud57600                        EQU        0
  41. stop10                            EQU        16384
  42. stop15                            EQU        -32768
  43. stop20                            EQU        -16384
  44. noParity                        EQU        0
  45. oddParity                        EQU        4096
  46. evenParity                        EQU        12288
  47. data5                            EQU        0
  48. data6                            EQU        2048
  49. data7                            EQU        1024
  50. data8                            EQU        3072
  51.  
  52. ctsEvent                        EQU        32
  53. breakEvent                        EQU        128
  54. xOffWasSent                        EQU        128
  55. dtrNegated                        EQU        64
  56. ainRefNum                        EQU        -6                    ;serial port A input
  57. aoutRefNum                        EQU        -7                    ;serial port A output
  58. binRefNum                        EQU        -8                    ;serial port B input
  59. boutRefNum                        EQU        -9                    ;serial port B output
  60. swOverrunErr                    EQU        1                    ;serial driver error masks
  61. breakErr                        EQU        8                    ;serial driver error masks
  62. parityErr                        EQU        16                    ;serial driver error masks
  63. hwOverrunErr                    EQU        32                    ;serial driver error masks
  64. framingErr                        EQU        64                    ;serial driver error masks
  65. serdOptionClockExternal            EQU        $40                    ;option bit used with Control code 16
  66. serdOptionPreserveDTR            EQU        $80                    ;option bit used with Control code 16
  67.  
  68. sPortA                            EQU        0
  69. sPortB                            EQU        1
  70.  
  71. ; typedef SInt8             SPortSel
  72. ; csCodes for serial driver Control routines 
  73.  
  74. serdReset                        EQU        8
  75. serdSetBuf                        EQU        9
  76. serdHShake                        EQU        10
  77. serdClrBrk                        EQU        11
  78. serdSetBrk                        EQU        12
  79. serdSetBaud                        EQU        13
  80. serdHShakeDTR                    EQU        14
  81. serdSetMIDI                        EQU        15
  82. serdSetMisc                        EQU        16
  83. serdSetDTR                        EQU        17
  84. serdClrDTR                        EQU        18
  85. serdSetPEChar                    EQU        19
  86. serdSetPECharAlternate            EQU        20
  87. serdSetXOff                        EQU        21
  88. serdClrXOff                        EQU        22
  89. serdSendXOnConditional            EQU        23
  90. serdSendXOn                        EQU        24
  91. serdSendXOffConditional            EQU        25
  92. serdSendXOff                    EQU        26
  93. serdChannelReset                EQU        27
  94. serdSet230KBaud                    EQU        'JF'                ; set 230K baud data rate 
  95. serdSetPollWrite                EQU        'jf'                ; disable interrupt-driven transmit 
  96. serdSetFlushCount                EQU        'FC'
  97.  
  98. ; csCodes for serial driver Status routines 
  99. serdGetBuf                        EQU        2
  100. serdStatus                        EQU        8
  101. serdGetVers                        EQU        9
  102. serdGetVersSys                    EQU        $8000
  103.  
  104. SerShk                     RECORD    0
  105. fXOn                     ds.b   1        ; offset: $0 (0)        ;XOn flow control enabled flag
  106. fCTS                     ds.b   1        ; offset: $1 (1)        ;CTS flow control enabled flag
  107. xOn                         ds.b   1        ; offset: $2 (2)        ;XOn character
  108. xOff                     ds.b   1        ; offset: $3 (3)        ;XOff character
  109. errs                     ds.b   1        ; offset: $4 (4)        ;errors mask bits
  110. evts                     ds.b   1        ; offset: $5 (5)        ;event enable mask bits
  111. fInX                     ds.b   1        ; offset: $6 (6)        ;Input flow control enabled flag
  112. fDTR                     ds.b   1        ; offset: $7 (7)        ;DTR input flow control flag
  113. sizeof                     EQU *            ; size:   $8 (8)
  114.                         ENDR
  115.  
  116. ; typedef struct SerShk     SerShk
  117. SerStaRec                 RECORD    0
  118. cumErrs                     ds.b   1        ; offset: $0 (0)
  119. xOffSent                 ds.b   1        ; offset: $1 (1)
  120. rdPend                     ds.b   1        ; offset: $2 (2)
  121. wrPend                     ds.b   1        ; offset: $3 (3)
  122. ctsHold                     ds.b   1        ; offset: $4 (4)
  123. xOffHold                 ds.b   1        ; offset: $5 (5)
  124. sizeof                     EQU *            ; size:   $6 (6)
  125.                         ENDR
  126.  
  127. ; typedef struct SerStaRec     SerStaRec
  128. ;
  129. ; pascal OSErr SerReset(short refNum, short serConfig)
  130. ;
  131.     IF GENERATINGCFM THEN
  132.         IMPORT_CFM_FUNCTION    SerReset
  133.     ENDIF
  134.  
  135. ;
  136. ; pascal OSErr SerSetBuf(short refNum, Ptr serBPtr, short serBLen)
  137. ;
  138.     IF GENERATINGCFM THEN
  139.         IMPORT_CFM_FUNCTION    SerSetBuf
  140.     ENDIF
  141.  
  142. ;
  143. ; pascal OSErr SerHShake(short refNum, const SerShk *flags)
  144. ;
  145.     IF GENERATINGCFM THEN
  146.         IMPORT_CFM_FUNCTION    SerHShake
  147.     ENDIF
  148.  
  149. ;
  150. ; pascal OSErr SerSetBrk(short refNum)
  151. ;
  152.     IF GENERATINGCFM THEN
  153.         IMPORT_CFM_FUNCTION    SerSetBrk
  154.     ENDIF
  155.  
  156. ;
  157. ; pascal OSErr SerClrBrk(short refNum)
  158. ;
  159.     IF GENERATINGCFM THEN
  160.         IMPORT_CFM_FUNCTION    SerClrBrk
  161.     ENDIF
  162.  
  163. ;
  164. ; pascal OSErr SerGetBuf(short refNum, long *count)
  165. ;
  166.     IF GENERATINGCFM THEN
  167.         IMPORT_CFM_FUNCTION    SerGetBuf
  168.     ENDIF
  169.  
  170. ;
  171. ; pascal OSErr SerStatus(short refNum, SerStaRec *serSta)
  172. ;
  173.     IF GENERATINGCFM THEN
  174.         IMPORT_CFM_FUNCTION    SerStatus
  175.     ENDIF
  176.  
  177.     ENDIF ; __SERIAL__
  178.